package Day21.staticMethodReference;

/**
 * @version 1.0
 * @BelongsProject:IntelliJ IDEA
 * @BelongsPackage:Day21.staticMethodReference
 * @Author:hyhWTX
 * @ClassName:Demo01staticMethodReference
 * @CreateTime:2022年-10月-22日 10:58
 * @Description: 通过类名来调用静态成员方法
 */
public class Demo01staticMethodReference {
    //定义一方法，方法参数传递一个计算绝对值的整数，和函数式接口Calcable
    private static int method(int number, Calcable c){
        return c.calc(number);

    }
    public static void main(String[] args){
        //调用method方法，传递计算绝对值得到整数，和Lambda表达式
       int number =  method(-10,(n)->{
            //对参数进行绝对值计算并返回结果
            return Math.abs(n);
        });
        System.out.println(number);
        //使用方法引用，类Math存在，计算的静态方法也存在
       int number2 =  method(-10,Math::abs);
        System.out.println(number2);
    }
}
